在作業系統中設定 snmpd 服務

透過 SNMP 與 KSMG 進行互動是使用作業系統的“snmpd“服務來實現的。snmpd 服務充當主代理,透過 SNMP 接收和處理來自監控系統和其他外部使用者的請求。KSMG 透過 UNIX™ 套接字透過 AgentX 協定作為子代理連線到 snmpd 服務。

安裝 snmpd 服務

確保您的作業系統中已安裝 snmpd 服務。如果未安裝服務,請安裝相應的軟體套件。

要安裝 snmpd 服務和輔助公用程式

輸入以下命令:

建立用於存取資料的使用者帳戶

在建立帳戶之前,請停止 snmpd 服務。

為了確保使用身分驗證和加密透過 SNMPv3 存取資料的安全性,您需要在 snmpd 服務端建立使用者帳戶,其中包含以下資訊:

出於安全考慮,我們建議在 KSMG 叢集的每個節點上使用獨立的使用者帳戶。

您可以透過以下方式建立使用者帳戶:

若要使用 net-snmp-create-v3-user 公用程式建立使用者帳戶:

net-snmp-create-v3-user -ro -a <身分驗證演算法> -x <加密演算法> <使用者名稱>

互動請求身分驗證和加密密碼。

範例:

net-snmp-create-v3-user -ro -a SHA -x AES MonitoringUser

若要在不使用該公用程式的情況下建立使用者帳戶:

  1. 建立 /var/lib/snmp/snmpd.conf 設定檔:

    touch /var/lib/snmp/snmpd.conf

  2. 在設定檔中新增下列行:

    createUser <使用者名稱> <身分驗證演算法> "<身分驗證密碼>" <加密演算法> "<加密密碼>"

    範例:

    createUser MonitoringUser SHA "MonitoringAuthSecret" AES "MonitoringPrivSecret"

建立用於接收 SNMP 陷阱的使用者帳戶

若要透過驗證和加密透過 SNMPv3 接收 SNMP 陷阱,您需要在對應服務(通常是 snmptrapd 服務)的上下文中在監控系統一側建立帳戶。

該帳戶必須包含以下資訊:

出於安全目的,您必須使用單獨的使用者帳戶來存取資料並接收 SNMP 陷阱。
我們建議建立獨立的使用者帳戶,用於從 KSMG 叢集的每個節點接收 SNMP 陷阱。

有關建立用於接收 SNMP 陷阱的使用者帳戶的說明,請參閱監控系統的檔案。

配置 snmpd 服務

snmpd 服務的設定儲存在 /etc/snmp/snmpd.conf 檔案中。您可以將必要的資訊新增至現有設定檔中,或建立新的設定檔並按給定順序新增下面列出的行。

要設定 snmpd 服務:

  1. 如果您選擇建立新的設定檔,請確保只有超級使用者有權存取它。如果需要,設定權限:

    chown root:root /etc/snmp/snmpd.conf

    chmod 600 /etc/snmp/snmpd.conf

  2. 指定 snmpd 服務必須偵聽傳入請求的協定、網路介面位址和連接埠號。
    • 如果您要監聽所有網路介面上的請求,請將以下行新增至設定檔:

      # 透過 UDP 偵聽傳入的 SNMP 請求

      agentAddress udp:161

    • 如果只想監聽本機網路介面上的請求,例如監控系統安裝在同一台機器上,則新增下列行:

      # 透過 UDP 偵聽傳入的 SNMP 請求

      agentAddress udp:127.0.0.1:161

  3. 指定 UNIX 套接字的路徑和權限,snmpd 服務必須在該套接字上偵聽透過 AgentX 協定的子代理程式連線。為此,請將以下行新增至設定檔:

    # 透過 UNIX 套接字監聽子代理連線

    master agentx

    agentXSocket unix:/var/run/agentx-master.socket

    agentXPerms 770 770 kluser klusers

  4. 如有必要,您可以提供系統描述、系統位置以及管理員的聯絡地址。為此,請將以下行新增至設定檔:

    # 系統基本資訊

    sysDescr <系統敘述>

    sysLocation <系統位置>

    sysContact <管理員的聯絡地址>

    sysServices 72

  5. 指定您希望透過 SNMP 協定供監控系統使用的OID 樹的範圍。若要存取 KSMG 資料,請將以下行新增至設定檔:

    # Kaspersky Secure Mail Gateway SNMP statistics

    view monitoring included .1.3.6.1.4.1.23668.1735

  6. 必要時,您也可以指定 OID 樹的範圍,其中包含 snmpd 服務儲存的有關作業系統的資訊。此範圍將可供您的監控系統使用。

    有關作業系統的資訊包括例如有關 CPU 和 RAM 使用情況、磁碟分割區上的可用空間、網路介面負載的資訊;已安裝軟體的清單;已開啟的網路連線清單;以及正在執行的處理程序的清單。該資訊的一部分可能是機密的。

    • 如果您只想允許存取一般系統資訊以及有關RAM、CPU 和磁碟裝置使用情況的資訊,請將以下行新增至設定檔:

      # SNMPv2-MIB - 基本系統訊息

      view monitoring included .1.3.6.1.2.1.1

      # HOST-RESOURCES-MIB - CPU、記憶體、檔案系統

      view monitoring included .1.3.6.1.2.1.25.1

      view monitoring included .1.3.6.1.2.1.25.2

      view monitoring included .1.3.6.1.2.1.25.3

      view monitoring included .1.3.6.1.2.1.25.5

      # UCD-SNMP-MIB - 記憶體和 CPU 使用情況

      view monitoring included .1.3.6.1.4.1.2021.4

      view monitoring included .1.3.6.1.4.1.2021.10

      view monitoring included .1.3.6.1.4.1.2021.11

      # UCD-SNMP-DISKIO-MIB - 區塊裝置 I/O 統計資訊

      view monitoring included .1.3.6.1.4.1.2021.13

      # IF-MIB - 網路介面 I/O 統計訊息

      view monitoring included .1.3.6.1.2.1.2

      view monitoring included .1.3.6.1.2.1.31

    • 如果要允許存取所有系統資訊,請將以下行新增到設定檔中:

      # 允許存取整個 OID 樹

      view monitoring included .1

  7. 指定建立的使用者帳戶的存取模式和資訊範圍。為此,請將以下行新增至設定檔:

    # SNMPv3 監控系統使用者的存取控制

    rouser <使用者名稱> priv -V 監控

  8. 若要傳送 SNMP 陷阱,請指定監控系統的 IP 位址和用於接收陷阱的使用者憑證。為此,請將以下行新增至設定檔:

    # 向監控系統傳送 SNMPv3 陷阱

    trapsess -Ci -v3 -t0.1 -r1 -l authPriv -u <用於接收陷阱的使用者名稱> -a <身分驗證演算法> -A "<用於接收陷阱的使用者密碼>" -x <加密演算法> -X "<加密密碼>" udp:<IP 位址>:162

將設定 snmpd 服務。

若要與多個監控系統整合,請為每個系統建立一個單獨的使用者帳戶,指定每個使用者帳戶的可用資訊範圍(“view“和“rouser“指令)並配置SNMP 陷阱的傳送(“trapsess“指令)。

snmpd 服務設定檔範例

使用新設定啟動 snmpd 服務

若要套用新配置:

  1. 重啟 snmpd 服務:

    systemctl restart snmpd

  2. 檢查 snmpd 服務的狀態:

    systemctl status snmpd

    狀態必須是running

  3. 允許該服務在作業系統啟動時自動啟動:

    systemctl enable snmpd

  4. 如果您在作業系統或網路裝置中使用防火牆,請新增規則以允許 SNMP 封包通過。

snmpd 服務已設定。

檢查 snmpd 服務的運作狀況

若要測試 snmpd 服務,請在 KSMG Web 介面中設定 SNMP 的使用,並使用“snmpwalk“公用程式請求 SNMP 資料。

若要取得 KSMG 提供的 SNMP 資料的範圍:

snmpwalk -v3 -l authPriv -u <使用者名稱> -a <身分驗證演算法> -A "<身分驗證密碼>" -x <加密演算法> -X "<加密密碼>" <IP 位址> .1.3.6.1.4.1.23668.1735

範例:

snmpwalk -v3 -l authPriv -u MonitoringUser -a SHA -A "MonitoringAuthSecret" -x AES -X "MonitoringPrivSecret" 127.0.0.1 .1.3.6.1.4.1.23668.1735

頁面頂端